home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
GFX Sensations 1
/
Graphic Sensations - Volume 1.iso
/
tools
/
amiga
/
3d_tools
/
rend10.txt
< prev
next >
Wrap
Text File
|
2000-01-01
|
11KB
|
157 lines
Short: C Code for Interactive 3D Graphics
Type: gfx/3d
Uploader: mps4466@ultb.isc.rit.edu (Michael P. Schenck)
Author: mps4466@ultb.isc.rit.edu (Michael P. Schenck)
This software package was developed to provide the tools needed to
construct, visualize, and interact with a virtual environment. The environment
is generated from a series of primitives called models which are linked
together and controlled through a hierarchial display map to create objects.
There can be multiple objects and any number of nodes (action blocks) within
a single object that link the primitives together.
The view into the environment is controlled through a view structure
which when reconfigured is used to display the next frame of graphics. The
view is a simple "camera" implimentation using spherical coordinates and
parameters for far and near clipping planes.
Other functions available in the library include a pause function and
a getinput function. The get input function will grab a character from the
keyboard in a wait or nowait mode.
The current implimentation of the renderer only supports drawing
a wireframe output. Clipping is done on a "whole" polygon basis which
means that if any of a poly's verticies are outside the clipping limits
(view volume) then the entire poly is removed. This can create annoying
visual artifacts if a poly is very large and near to the viewpoint.
The library uses a floating point environment and therefore requires
a math coprocessor to attain usable frame rates. To give an example of speed,
a scene with 18 objects composed of 261 verticies (217 polys) is rendered 1000
times. While each frame is rendered, the viewpoint is moved around the scene.
On an A4000/040, this demo completes in 50 sec which is an average of 20fps.
On any other machine, the frame rate is usually less than half. This is due
to the 040's ability to do FPU operations in parallel with CPU operations.
The library is not very useful on anything except an 040 based machine
because of the floating point environment. It will multitask well with the
operating system and doesn't hog the blitter. The code is really just a small
hack I wrote a while ago! I am working on a much larger C++ VR Toolkit for
the AMIGA. The toolkit will be an extensive collection of classes and
functions that will allow easy construction of interactive 3d environments.
If you are interested in the development of a public domain VR Toolkit for
the AMIGA, read the notice in this release and respond to it! I am looking
for talented people who are interested in the development of powerful PD (and
possibly beyond) VR authoring software for the AMIGA.
============================= Archive contents =============================
Original Packed Ratio Date Time Name
-------- ------- ----- --------- -------- -------------
10735 4563 57.4% 28-Feb-94 12:50:04 REND1.0/AMIGA_VR_TOOLKIT_NOTICE
838 319 61.9% 28-Feb-94 13:03:52 REND1.0/AMIGA_VR_TOOLKIT_NOTICE.info
7134 2902 59.3% 28-Feb-94 22:17:56 REND1.0/anim.c
486 275 43.4% 28-Feb-94 13:03:52 REND1.0/anim.c.info
21076 12385 41.2% 28-Feb-94 22:18:14 REND1.0/anim020
835 394 52.8% 28-Feb-94 22:18:54 REND1.0/anim020.info
21280 12497 41.2% 28-Feb-94 22:08:02 REND1.0/anim040
835 394 52.8% 28-Feb-94 22:18:54 REND1.0/anim040.info
841 499 40.6% 28-Feb-94 13:03:52 REND1.0/Build.info
2632 1711 34.9% 21-Jul-93 01:14:12 REND1.0/Debug
459 302 34.2% 28-Feb-94 13:03:52 REND1.0/Debug.info
838 543 35.2% 28-Feb-94 13:03:52 REND1.0/Edit.info
2657 648 75.6% 28-Feb-94 13:09:50 REND1.0/GraphicSubSystem.info
841 500 40.5% 28-Feb-94 13:09:50 REND1.0/GraphicSubSystem/Build.info
3172 1334 57.9% 07-Feb-94 19:58:22 REND1.0/GraphicSubSystem/control.c
486 278 42.7% 28-Feb-94 13:09:50 REND1.0/GraphicSubSystem/control.c.info
9132 2600 71.5% 07-Feb-94 20:10:42 REND1.0/GraphicSubSystem/database.c
486 280 42.3% 28-Feb-94 13:09:48 REND1.0/GraphicSubSystem/database.c.info
2632 1711 34.9% 21-Jul-93 00:52:00 REND1.0/GraphicSubSystem/Debug
459 301 34.4% 28-Feb-94 13:09:50 REND1.0/GraphicSubSystem/Debug.info
9526 3357 64.7% 07-Feb-94 19:56:04 REND1.0/GraphicSubSystem/display.c
486 280 42.3% 28-Feb-94 13:09:50 REND1.0/GraphicSubSystem/display.c.info
8221 2477 69.8% 07-Feb-94 20:30:48 REND1.0/GraphicSubSystem/displaymap.c
486 284 41.5% 28-Feb-94 13:09:48 REND1.0/GraphicSubSystem/displaymap.c.info
838 541 35.4% 28-Feb-94 13:09:50 REND1.0/GraphicSubSystem/Edit.info
1128 457 59.4% 28-Feb-94 22:20:02 REND1.0/GraphicSubSystem/makefile
838 205 75.5% 28-Feb-94 13:09:50 REND1.0/GraphicSubSystem/makefile.info
5130 1655 67.7% 07-Feb-94 19:51:38 REND1.0/GraphicSubSystem/matrix.c
486 276 43.2% 28-Feb-94 13:09:48 REND1.0/GraphicSubSystem/matrix.c.info
2931 1305 55.4% 07-Feb-94 20:00:22 REND1.0/GraphicSubSystem/raster.c
486 281 42.1% 28-Feb-94 13:09:50 REND1.0/GraphicSubSystem/raster.c.info
1882 641 65.9% 16-Dec-93 00:52:46 REND1.0/GraphicSubSystem/rasterasm.a
486 293 39.7% 28-Feb-94 13:09:50 REND1.0/GraphicSubSystem/rasterasm.a.info
470 275 41.4% 28-Feb-94 13:09:50 REND1.0/GraphicSubSystem/SCoptions.info
3866 1354 64.9% 07-Feb-94 20:03:46 REND1.0/GraphicSubSystem/transformation.c
486 277 43.0% 28-Feb-94 13:09:50 REND1.0/GraphicSubSystem/transformation.c.info
6202 2445 60.5% 25-Feb-94 12:43:28 REND1.0/GraphicSubSystem/viewperstrans.c
486 278 42.7% 28-Feb-94 13:09:50 REND1.0/GraphicSubSystem/viewperstrans.c.info
2657 647 75.6% 28-Feb-94 13:03:52 REND1.0/Include.info
151 106 29.8% 31-Jan-94 21:46:38 REND1.0/Include/control.h
486 227 53.2% 02-Feb-94 23:28:40 REND1.0/Include/control.h.info
1107 525 52.5% 07-Feb-94 20:37:52 REND1.0/Include/database.h
486 236 51.4% 02-Feb-94 23:28:40 REND1.0/Include/database.h.info
493 266 46.0% 07-Feb-94 20:40:18 REND1.0/Include/display.h
486 231 52.4% 02-Feb-94 23:28:40 REND1.0/Include/display.h.info
934 422 54.8% 07-Feb-94 20:38:54 REND1.0/Include/displaymap.h
486 232 52.2% 02-Feb-94 23:28:40 REND1.0/Include/displaymap.h.info
155 115 25.8% 07-Feb-94 20:40:40 REND1.0/Include/errors.h
486 234 51.8% 02-Feb-94 23:28:40 REND1.0/Include/errors.h.info
315 168 46.6% 05-Feb-94 20:58:26 REND1.0/Include/graphicsubsystem.h
486 230 52.6% 02-Feb-94 23:28:40 REND1.0/Include/graphicsubsystem.h.info
344 158 54.0% 03-Feb-94 01:03:46 REND1.0/Include/matrix.h
486 231 52.4% 02-Feb-94 23:28:40 REND1.0/Include/matrix.h.info
67 64 4.4% 07-Feb-94 19:29:32 REND1.0/Include/raster.h
486 232 52.2% 02-Feb-94 23:28:40 REND1.0/Include/raster.h.info
521 178 65.8% 07-Feb-94 20:37:58 REND1.0/Include/transformation.h
486 230 52.6% 02-Feb-94 23:28:40 REND1.0/Include/transformation.h.info
342 198 42.1% 07-Feb-94 20:40:48 REND1.0/Include/types.h
486 227 53.2% 02-Feb-94 23:28:40 REND1.0/Include/types.h.info
412 244 40.7% 25-Feb-94 12:38:38 REND1.0/Include/viewperstrans.h
486 229 52.8% 02-Feb-94 23:28:40 REND1.0/Include/viewperstrans.h.info
852 390 54.2% 28-Feb-94 22:20:16 REND1.0/makefile
838 205 75.5% 28-Feb-94 13:03:52 REND1.0/makefile.info
2657 650 75.5% 28-Feb-94 13:03:52 REND1.0/ModelLibrary.info
249 80 67.8% 18-Sep-93 13:14:06 REND1.0/ModelLibrary/cube.asc
328 79 75.9% 18-Sep-93 13:14:16 REND1.0/ModelLibrary/cube.bin
5144 1098 78.6% 14-Nov-93 01:51:02 REND1.0/ModelLibrary/plane10.bin
11304 2383 78.9% 25-Feb-94 18:23:02 REND1.0/ModelLibrary/plane15.bin
19864 4263 78.5% 25-Feb-94 18:24:46 REND1.0/ModelLibrary/plane20.bin
1384 316 77.1% 14-Nov-93 01:20:32 REND1.0/ModelLibrary/plane5.bin
168 63 62.5% 14-Nov-93 16:35:36 REND1.0/ModelLibrary/pyramid.asc
248 56 77.4% 14-Nov-93 16:35:52 REND1.0/ModelLibrary/pyramid.bin
2657 649 75.5% 28-Feb-94 13:03:52 REND1.0/ModelUtilities.info
2657 644 75.7% 06-Feb-94 13:30:54 REND1.0/ModelUtilities/Modeler.info
841 498 40.7% 06-Feb-94 13:30:36 REND1.0/ModelUtilities/Modeler/Build.info
2632 1711 34.9% 31-Aug-93 18:14:20 REND1.0/ModelUtilities/Modeler/Debug
459 303 33.9% 06-Feb-94 13:30:36 REND1.0/ModelUtilities/Modeler/Debug.info
838 543 35.2% 06-Feb-94 13:30:36 REND1.0/ModelUtilities/Modeler/Edit.info
207 129 37.6% 06-Feb-94 13:20:16 REND1.0/ModelUtilities/Modeler/makefile
838 209 75.0% 06-Feb-94 13:30:36 REND1.0/ModelUtilities/Modeler/makefile.info
12232 7811 36.1% 06-Feb-94 14:06:04 REND1.0/ModelUtilities/Modeler/modeler
1217 542 55.4% 06-Feb-94 14:05:32 REND1.0/ModelUtilities/Modeler/modeler.c
486 282 41.9% 06-Feb-94 13:30:36 REND1.0/ModelUtilities/Modeler/modeler.c.info
835 395 52.6% 06-Feb-94 13:30:36 REND1.0/ModelUtilities/Modeler/modeler.info
470 276 41.2% 06-Feb-94 13:30:36 REND1.0/ModelUtilities/Modeler/SCoptions.info
2657 646 75.6% 06-Feb-94 13:31:50 REND1.0/ModelUtilities/Plane.info
841 497 40.9% 06-Feb-94 13:31:50 REND1.0/ModelUtilities/Plane/Build.info
2632 1711 34.9% 13-Nov-93 22:23:16 REND1.0/ModelUtilities/Plane/Debug
459 302 34.2% 06-Feb-94 13:31:50 REND1.0/ModelUtilities/Plane/Debug.info
838 540 35.5% 06-Feb-94 13:31:50 REND1.0/ModelUtilities/Plane/Edit.info
202 133 34.1% 06-Feb-94 13:26:52 REND1.0/ModelUtilities/Plane/makefile
838 206 75.4% 06-Feb-94 13:31:50 REND1.0/ModelUtilities/Plane/makefile.info
15124 9243 38.8% 06-Feb-94 13:26:58 REND1.0/ModelUtilities/Plane/plane
1717 648 62.2% 06-Feb-94 14:06:52 REND1.0/ModelUtilities/Plane/plane.c
486 277 43.0% 06-Feb-94 13:31:50 REND1.0/ModelUtilities/Plane/plane.c.info
835 398 52.3% 06-Feb-94 13:31:50 REND1.0/ModelUtilities/Plane/plane.info
470 274 41.7% 06-Feb-94 13:31:50 REND1.0/ModelUtilities/Plane/SCoptions.info
5244 2408 54.0% 28-Feb-94 22:39:26 REND1.0/REND1.0_README
838 322 61.5% 28-Feb-94 13:03:52 REND1.0/REND1.0_README.info
470 274 41.7% 28-Feb-94 13:03:52 REND1.0/SCoptions.info
5863 2418 58.7% 28-Feb-94 22:18:00 REND1.0/sincos.c
486 280 42.3% 28-Feb-94 13:03:52 REND1.0/sincos.c.info
20712 12134 41.4% 28-Feb-94 22:18:22 REND1.0/sincos020
835 394 52.8% 28-Feb-94 22:18:54 REND1.0/sincos020.info
20916 12232 41.5% 28-Feb-94 22:08:12 REND1.0/sincos040
835 391 53.1% 28-Feb-94 22:18:54 REND1.0/sincos040.info
-------- ------- ----- --------- --------
297835 136050 54.3% 01-Mar-94 12:23:42 106 files